package com.benshou.bcss.common.property;

import com.benshou.bcss.common.j17common.annotation.Nullable;

/**
 * 属性管理器，用于属性的增删改查
 *
 * @author <a href="mailto:liuzhenbang@benshou.com">Liu Zhenbang</a>
 */
public interface PropertyManager<T> {

    /**
     * 设置属性
     *
     * @param property 属性
     */
    void set(T property);

    /**
     * @return 属性
     */
    @Nullable
    T get();

    /**
     * 移除属性值
     */
    void remove();
}
